package com.example.emos.wx.service;

import com.example.emos.wx.db.pojo.TbUser;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Set;

public interface UserService {

    /**
     * 注册用户
     * @param registerCode 激活码
     * @param code 临时授权字符串
     * @param nickname 昵称
     * @param photo 头像地址
     * @return 用户的id
     */
    public int registerUser(String registerCode, String code, String nickname, String photo);

    /**
     * 查询用户权限列表
     * @param userId
     * @return
     */
    public Set<String> searchUserPermissions(int userId);

    /**
     * 用户登录
     * @param code
     * @return
     */
    public Integer login(String code);

    /**
     * 通过id查询用户信息
     * @param useId
     * @return
     */
    public TbUser searchById(int useId);

    /**
     * 查询员工的入职日期
     * @param userId
     * @return
     */
    public String searchUserHiredate(int userId);

    /**
     * 查询员工的基本信息
     * @param userId
     * @return
     */
    public HashMap searchUserSummary(int userId);

    /**
     * 分组查询用户信息
     * @param keyword
     * @return
     */
    public ArrayList<HashMap> searchUserGroupByDept(String keyword);

    /**
     * 查询成员列表
     * @param param
     * @return
     */
    public ArrayList<HashMap> searchMembers(List param);
}
